package com.lanyou.esb.web.serviceChannelManagement.vo;

import java.util.Date;
import java.util.List;

import org.apache.commons.lang3.StringUtils;

public class ServiceChannelVo implements Comparable<ServiceChannelVo> {
	private String id;
	private String callFieldName;
	private String callSystemId;
	private String callSystemName;
	private String pubFieldName;
	private String pubSystemId;
	private String pubSystemName;
	private String appKey;
	private String appDate;
	private String isEnable;
	private String status;
	private String ifId;
	private String ifName;
	private String whiteList;
	private Date invalidDate;

	private List<String> ids;
	private List<String> ifIds;
	private List<String> names;

	public String getCallSystemId() {
		return callSystemId;
	}

	public void setCallSystemId(String callSystemId) {
		this.callSystemId = callSystemId;
	}

	public String getCallSystemName() {
		return callSystemName;
	}

	public void setCallSystemName(String callSystemName) {
		this.callSystemName = callSystemName;
	}

	public String getAppKey() {
		return appKey;
	}

	public void setAppKey(String appKey) {
		this.appKey = appKey;
	}

	public String getPubSystemId() {
		return pubSystemId;
	}

	public void setPubSystemId(String pubSystemId) {
		this.pubSystemId = pubSystemId;
	}

	public String getPubSystemName() {
		return pubSystemName;
	}

	public void setPubSystemName(String pubSystemName) {
		this.pubSystemName = pubSystemName;
	}

	public String getIfName() {
		return ifName;
	}

	public void setIfName(String ifName) {
		this.ifName = ifName;
	}

	public String getIsEnable() {
		return isEnable;
	}

	public void setIsEnable(String isEnable) {
		this.isEnable = isEnable;
	}

	@Override
	public String toString() {
		return "{callSystemId:" + callSystemId + ",callSystemName:"
				+ callSystemName + ",appKey:" + appKey + ",pubSystemId:"
				+ pubSystemId + ",pubSystemName:" + pubSystemName + ",ifName:"
				+ ifName + ",isEnable:" + isEnable + "}";
	}

	public String getAppDate() {
		return appDate;
	}

	public void setAppDate(String appDate) {
		this.appDate = appDate;
	}

	@Override
	public int compareTo(ServiceChannelVo other) {
		if (!StringUtils.equals(callSystemId, other.callSystemId)) {
			return -1;
		}
		if (!StringUtils.equals(callSystemName, other.callSystemName)) {
			return -1;
		}
		if (!StringUtils.equals(appKey, other.appKey)) {
			return -1;
		}
		if (!StringUtils.equals(appDate, other.appDate)) {
			return -1;
		}
		if (!StringUtils.equals(pubSystemId, other.pubSystemId)) {
			return -1;
		}
		if (!StringUtils.equals(pubSystemName, other.pubSystemName)) {
			return -1;
		}
		if (!StringUtils.equals(status, other.status)) {
			return -1;
		}
		return 0;
	}

	public String getIfId() {
		return ifId;
	}

	public void setIfId(String ifId) {
		this.ifId = ifId;
	}

	public List<String> getIfIds() {
		return ifIds;
	}

	public void setIfIds(List<String> ids) {
		this.ifIds = ids;
	}

	public List<String> getNames() {
		return names;
	}

	public void setNames(List<String> names) {
		this.names = names;
	}

	public String getCallFieldName() {
		return callFieldName;
	}

	public void setCallFieldName(String callFieldName) {
		this.callFieldName = callFieldName;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getStatus() {
		return status;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getWhiteList() {
		return whiteList;
	}

	public void setWhiteList(String whiteList) {
		this.whiteList = whiteList;
	}

	public List<String> getIds() {
		return ids;
	}

	public void setIds(List<String> ids) {
		this.ids = ids;
	}

	public String getPubFieldName() {
		return pubFieldName;
	}

	public void setPubFieldName(String pubFieldName) {
		this.pubFieldName = pubFieldName;
	}

	public Date getInvalidDate() {
		return invalidDate;
	}

	public void setInvalidDate(Date invalidDate) {
		this.invalidDate = invalidDate;
	}

}
